<?php

class Modelos_model extends CI_Model {

    function __construct() {
        
    }

    public function getModelos() {
        $this->db->select('*')
                ->from('modelos')
                ->order_by('id', 'asc');

        $query = $this->db->get();

        return $query->result();
    }

    public function getModelosById($id) {
        /* $this->db->select('*')
          ->from('modelos')
          ->where('id', $id); */
        $this->db->select('*')
                ->from('modelos')
                ->join('edades', 'modelos.edad = edades.id')
                ->join('provincias', 'modelos.provincia = provincias.id')
                ->join('color_ojos', 'modelos.color_ojos = color_ojos.id')
                ->join('color_pelo', 'modelos.color_pelo = color_pelo.id')
                ->join('color_piel', 'modelos.color_piel = color_piel.id')
                ->join('estaturas', 'modelos.estatura = estaturas.id')
                ->where('modelos.id', $id);

        $query = $this->db->get();

        return $query->result();
    }

    function getNuevasModelos() {
        $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                ->from('modelos')
                ->join('edades', 'modelos.edad = edades.id')
                ->join('provincias', 'modelos.provincia = provincias.id')
                ->order_by('modelos.id', 'desc')
                ->limit(6);


        $query = $this->db->get();

        return $query->result();
    }

    function getEdades() {
        $this->db->distinct();
        $this->db->select('edades.id, edades.edad')
                ->from('edades')
                ->join('modelos', 'edades.id = modelos.edad')
                ->order_by('edad', 'asc');

        $query = $this->db->get();

        return $query->result();
    }

    function getProvincias() {
        $this->db->distinct();
        $this->db->select('provincias.id, provincias.provincia')
                ->from('provincias')
                ->join('modelos', 'provincias.id = modelos.provincia')
                ->order_by('edad', 'asc');

        $query = $this->db->get();

        return $query->result();
    }

    function getEstaturas() {
        $this->db->distinct();
        $this->db->select('estaturas.id, estaturas.estatura')
                ->from('estaturas')
                ->join('modelos', 'estaturas.id = modelos.estatura')
                ->order_by('edad', 'asc');

        $query = $this->db->get();

        return $query->result();
    }

    function getNuevasModelosWhere($edad, $provincia, $estatura) {

        if ($edad != '') {
            if ($provincia != '') {
                if ($estatura != '') {
                    /* $this->db->select('*')
                      ->from('modelos')
                      ->like('edad', $edad)
                      ->like('provincia', $provincia)
                      ->like('estatura', $estatura)
                      ->order_by('id', 'asc'); */
                    $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                            ->from('modelos')
                            ->join('edades', 'modelos.edad = edades.id AND edades.id = "' . $edad . '"')
                            ->join('provincias', 'modelos.provincia = provincias.id AND provincias.id = "' . $provincia . '"')
                            ->join('estaturas', 'modelos.estatura = estaturas.id AND estaturas.id = "' . $estatura . '"')
                            ->order_by('modelos.id', 'asc');
                } else {
                    /* $this->db->select('*')
                      ->from('modelos')
                      ->like('edad', $edad)
                      ->like('provincia', $provincia)
                      ->order_by('id', 'asc'); */
                    $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                            ->from('modelos')
                            ->join('edades', 'modelos.edad = edades.id AND edades.id = "' . $edad . '"')
                            ->join('provincias', 'modelos.provincia = provincias.id AND provincias.id = "' . $provincia . '"')
                            ->join('estaturas', 'modelos.estatura = estaturas.id')
                            ->order_by('modelos.id', 'asc');
                }
            } else {
                if ($estatura != '') {
                    /* $this->db->select('*')
                      ->from('modelos')
                      ->like('edad', $edad)
                      ->like('estatura', $estatura)
                      ->order_by('id', 'asc'); */
                    $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                            ->from('modelos')
                            ->join('edades', 'modelos.edad = edades.id AND edades.id = "' . $edad . '"')
                            ->join('provincias', 'modelos.provincia = provincias.id')
                            ->join('estaturas', 'modelos.estatura = estaturas.id AND estaturas.id = "' . $estatura . '"')
                            ->order_by('modelos.id', 'asc');
                } else {
                    /* $this->db->select('*')
                      ->from('modelos')
                      ->like('edad', $edad)
                      ->order_by('id', 'asc'); */
                    $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                            ->from('modelos')
                            ->join('edades', 'modelos.edad = edades.id AND edades.id = "' . $edad . '"')
                            ->join('provincias', 'modelos.provincia = provincias.id')
                            ->join('estaturas', 'modelos.estatura = estaturas.id')
                            ->order_by('modelos.id', 'asc');
                }
            }
        } else {
            if ($provincia != '') {
                if ($estatura != '') {
                    /* $this->db->select('*')
                      ->from('modelos')
                      ->like('provincia', $provincia)
                      ->like('estatura', $estatura)
                      ->order_by('id', 'asc'); */
                    $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                            ->from('modelos')
                            ->join('edades', 'modelos.edad = edades.id')
                            ->join('provincias', 'modelos.provincia = provincias.id AND provincias.id = "' . $provincia . '"')
                            ->join('estaturas', 'modelos.estatura = estaturas.id AND estaturas.id = "' . $estatura . '"')
                            ->order_by('modelos.id', 'asc');
                } else {
                    /* $this->db->select('*')
                      ->from('modelos')
                      ->like('provincia', $provincia)
                      ->order_by('id', 'asc'); */
                    $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                            ->from('modelos')
                            ->join('edades', 'modelos.edad = edades.id')
                            ->join('provincias', 'modelos.provincia = provincias.id AND provincias.id = "' . $provincia . '"')
                            ->join('estaturas', 'modelos.estatura = estaturas.id')
                            ->order_by('modelos.id', 'asc');
                }
            } else {
                if ($estatura != '') {
                    /* $this->db->select('*')
                      ->from('modelos')
                      ->like('estatura', $estatura)
                      ->order_by('id', 'asc'); */
                    $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                            ->from('modelos')
                            ->join('edades', 'modelos.edad = edades.id')
                            ->join('provincias', 'modelos.provincia = provincias.id')
                            ->join('estaturas', 'modelos.estatura = estaturas.id AND estaturas.id = "' . $estatura . '"')
                            ->order_by('modelos.id', 'asc');
                } else {
                    /* $this->db->select('*')
                      ->from('modelos')
                      ->order_by('id', 'asc'); */
                    $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                            ->from('modelos')
                            ->join('edades', 'modelos.edad = edades.id')
                            ->join('provincias', 'modelos.provincia = provincias.id')
                            ->join('estaturas', 'modelos.estatura = estaturas.id')
                            ->order_by('modelos.id', 'asc');
                }
            }
        }

        $query = $this->db->get();

        /* foreach ($query->result_array() as $key => $value) {
          $array['id'] = $value['id'];
          $array['nombre'] = $value['nombre'];
          $array['edad'] = $value['edad'];
          $array['provincia'] = $value['provincia'];
          $array['estatura'] = $value['estatura'];
          $array['color_ojos'] = $value['color_ojos'];
          $array['color_pelo'] = $value['color_pelo'];
          $array['color_piel'] = $value['color_piel'];
          $array['foto1'] = $value['foto1'];
          $array['foto2'] = $value['foto2'];
          $array['foto3'] = $value['foto3'];
          $array['foto4'] = $value['foto4'];
          $array['foto5'] = $value['foto5'];
          $array['foto6'] = $value['foto6'];
          $array['foto7'] = $value['foto7'];
          $array['foto8'] = $value['foto8'];
          $array['foto9'] = $value['foto9'];
          $array['foto10'] = $value['foto10'];
          $results[] = $array;
          }
          print_r(json_encode($results)); */
        return $query->result();
    }

    public function countRecords() {
        $this->db->select('*')
                ->from('modelos');
        $query = $this->db->get();
        return $query->num_rows();
    }

    public function getAllModelos($limit, $start) {
        $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                ->from('modelos')
                ->join('edades', 'modelos.edad = edades.id')
                ->join('provincias', 'modelos.provincia = provincias.id')
                ->order_by('modelos.id', 'RANDOM')
                ->limit($limit, $start);

        $query = $this->db->get();

        return $query->result();
    }
    
    
    public function getModelosByProvincia($provincia) {
        $this->db->select('modelos.id, modelos.nombre, edades.edad, provincias.provincia, modelos.foto1')
                ->from('modelos')
                ->join('edades', 'modelos.edad = edades.id')
                ->join('provincias', 'modelos.provincia = provincias.id')
                ->where('provincias.provincia', $provincia);

        $query = $this->db->get();

        return $query->result();
    }

}